Apparatus, method, and computer program for recording and reproducing digital data

ABSTRACT

A media player/recorder, and a method and computer program product for same comprises a wireless receiver to receive a signal representing encoded media data; a storage device to store the encoded media data; a processor comprising a storage controller to retrieve the encoded media data from the storage device, and a digital signal processor to decode the encoded media data retrieved by the storage controller; and an output circuit to output the decoded media data from the processor.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. Non-Provisionalpatent application Ser. No. 09/659,693 entitled “Apparatus And MethodFor Recording And Reproducing Digital Data,” filed Sep. 11, 2000, thedisclosure thereof incorporated by reference herein in its entirety.

This application claims priority under 35 U.S.C. § 119(e) to U.S.Provisional Patent Application Ser. No. 60/211,874, entitled “Method AndApparatus For Recording And Reproducing Digital Data,” filed Jun. 14,2000, the disclosure thereof incorporated by reference herein in itsentirety.

BACKGROUND

The present invention relates generally to an apparatus for recordingand reproducing digital data. More particularly, the present inventionrelates to a media player/recorder, having a miniature hard disk drivefor storing the digital data.

FIG. 1 is an example of a conventional MP3 player. MP3 player includesan interface 106, nonvolatile solid state memory 102, a decoder 110, adigital-to-analog (D/A) converter 147, an audio output 116, a key pad108, a display 112, a controller 104, RAM 144 and ROM 145.

Controller 104 controls the operation of the MP3 player in accordancewith a set of programmed instructions. Programmed instructions forcontroller 104 are stored in nonvolatile memory or ROM 145, and RAM 144is provided as the working memory for controller 104

Typically, MP3 data, which is a digital compressed format representingmusic data, is initially stored on a personal computer 50 and issubsequently transferred to the MP3 player via interface 106, undercontrol of controller 104. The MP3 data is stored in nonvolatile solidstate memory 102. Interface 50 can implemented by a standard parallelport, serial port, USB and the like. Nonvolatile solid state memory 102may be implemented as flash memory. Generally, for a music qualityrecording, a nonvolatile solid state memory having 64 Mbytes can storeabout 1 hour of music. Flash memory provides the capability of retainingthe stored digital data even when the MP3 player is powered down. Oncethe digital data has been transferred to the MP3 player, it no longerneeds to be connected to personal computer 50, and the MP3 player canplay back the MP3 data autonomously from personal computer 50.

Decoder 110 functions to decode and decompress the MP3 data file storedin nonvolatile solid state memory 102. Decoder 110 decompresses the MP3music file in accordance controller 104 according to the MP3 format, anddecodes the decompressed music file into a bit stream form. The bitstream is then converted into analog form by digital to analog converter147 for connection to a speaker, earphone and the like. A decodingprogram for the MP3 decoder function is stored in the ROM 145 and loadedto RAM 144 by controller 104 as required.

The MP3 player comprises a keypad 108 for allowing user control andinteraction with the MP3 player. Such control may include power on/poweroff, music selection and volume. The MP3 also comprises a display 112for displaying characters or graphics, such as a battery indicator, aplay mode indicator, a volume indicator, available memory size and thetitle of the music being played.

SUMMARY

In general, in one aspect, the invention features a mediaplayer/recorder, and a method and computer program product for same. Itcomprises a wireless receiver to receive a signal representing encodedmedia data; a storage device to store the encoded media data; aprocessor comprising a storage controller to retrieve the encoded mediadata from the storage device, and a digital signal processor to decodethe encoded media data retrieved by the storage controller; and anoutput circuit to output the decoded media data from the processor.

Particular implementations can include one or more of the followingfeatures. The media data is encoded by a process that compresses themedia data; and the encoded media data is decoded by a process thatdecompresses the encoded media data. The processor comprises a singleintegrated circuit. Implementations can comprise a read channelresponsive to the storage controller to read data from the storagedevice. Implementations can comprise a memory to store the encoded mediadata retrieved by the storage controller. The digital signal processorcomprises a decoder to decode the encoded media data stored in thememory. The storage device stores a process for decoding the encodedmedia data for a selected code. The digital signal processor determinesa code of the encoded media data retrieved by the processor, the processfor decoding the encoded media data is retrieved from the storage devicein accordance with the determined code, and the decoder decodes theencoded media data in accordance with the retrieved process.Implementations can comprise an input circuit to receive unencoded mediadata; wherein the digital signal processor comprises an encoder toencode the unencoded media data; and wherein the encoded media dataencoded by the digital signal processor is stored on the storage device.The processor obtains the encoded media data from the signalrepresenting the encoded media data. Implementations can comprise awireless transmitter to transmit the encoded media data. The wirelesstransmitter transmits the encoded media data while the output circuitoutputs the decoded media data from the processor. The storage devicestores a list of identifiers of desired encoded media selections; thewireless receiver receives a signal representing an identifier of anoffered encoded media selection; and the storage device stores theoffered encoded media selection when the identifier of the offeredencoded media selection corresponds to the identifier of one of thedesired encoded media selections. Implementations can comprise awireless transmitter to transmit a signal representing the identifiersof the desired encoded media selections. Implementations can comprise awireless transmitter; wherein the storage device stores a list ofidentifiers of shared encoded media selections stored on the storagedevice; wherein the wireless receiver receives a signal representing arequest for a sought encoded media selection, the request including anidentifier of the sought encoded media selection; and wherein thewireless transmitter transmits one of the shared encoded mediaselections when the identifier of the sought encoded media selectioncorresponds to the identifier of the one of the shared encoded mediaselections. The wireless transmitter transmits a signal representing theidentifiers of the shared encoded media selections. Implementations cancomprise an interface to receive a signal representing biometric data;and the storage device stores the biometric data. The interfacetransmits a signal representing the biometric data stored on the storagedevice. Implementations can comprise a display unit; wherein the storagedevice stores a list of desired items of interest; wherein the wirelessreceiver receives a signal representing an offered item of interest;wherein the display unit indicates a match when the offered item ofinterest corresponds to one of the desired items of interest.Implementations can comprise a directional antenna to determine adirection to a transmitter of the signal representing the offered itemof interest; and wherein the display unit displays the direction.Implementations can comprise a wireless transmitter to transmit contactinformation to the transmitter of the signal representing the offereditem of interest. The wireless transmitter transmits a signalrepresenting the desired items of interest. The media player/recorder isimplemented within a digital camera having an image sensor; the digitalsignal processor encodes image data representing an image captured bythe image sensor; and the storage controller stores the encoded imagedata on the storage device. The digital camera further comprises adisplay; the storage controller retrieves the encoded image data fromthe storage device; the digital signal processor decodes the retrievedencoded image data; and the media player/recorder sends a signalrepresenting the decoded image data to the display. The digital camerais a digital motion picture camera and the encoded image data representsa motion picture.

In general, in one aspect, the invention features a mediaplayer/recorder, and a method and computer program product for same. Itcomprises a wireless receiver to receive a signal representing encodedmedia data; a processor comprising a media access controller to obtainthe encoded media data from the signal, and a digital signal processorto decode the encoded media data obtained by the media accesscontroller; and an output circuit to output the decoded media data fromthe processor.

Particular implementations can include one or more of the followingfeatures. Implementations can comprise a non-volatile memory to storethe encoded media data obtained by the media access controller; whereinthe digital signal processor decodes the encoded media data stored inthe non-volatile memory. The non-volatile memory comprises a flashmemory. The media data is encoded by a process that compresses the mediadata; and the encoded media data is decoded by a process thatdecompresses the encoded media data. The processor comprises a singleintegrated circuit. The digital signal processor comprises a decoder todecode the encoded media data obtained by the media access controller.The digital signal processor determines a code of the encoded media dataobtained by the media access controller; and wherein the decoder decodesthe encoded media data in accordance with the determined code.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of a conventional MP3 player.

FIG. 2 is a block diagram of a first embodiment of a mediaplayer/recorder in accordance with the present invention.

FIG. 3 is a more detailed block diagram of a first embodiment of themedia player/recorder of FIG. 2.

FIG. 4 is a block diagram of a second embodiment of a mediaplayer/recorder in accordance with the present invention.

FIG. 5 is a more detailed block diagram of the media player/recorder ofFIG. 4.

FIG. 6 shows an exemplary data format of a magnetic disk having aplurality of concentric tracks comprised of a plurality of user datasectors and embedded servo data sectors.

FIG. 7 is a schematic representation of memory 202.

FIG. 8 is a memory map of memory 202.

FIG. 9 is flow chart of an energization/deenergization procedureaccording to a first embodiment of the present invention.

FIG. 10 is flow chart of an energization/deenergization procedureaccording to a second embodiment of the present invention.

FIG. 11 is flow chart of an energization/deenergization procedureaccording to a third embodiment of the present invention.

FIG. 12 is flow chart of an operating procedure according to the presentinvention.

FIG. 13 shows a variation of the first embodiment of the mediaplayer/recorder of FIG. 2.

FIG. 14 shows a variation of the second embodiment of the mediaplayer/recorder of FIG. 2.

FIG. 15 is a block diagram of a third embodiment of a mediaplayer/recorder in accordance with the present invention.

FIG. 16 is a block diagram of a fourth embodiment of a mediaplayer/recorder in accordance with the present invention.

FIG. 17 illustrates a mode of some implementations referred to as “localradio mode.”

FIG. 18 shows an implementation where a media player/recorder isimplemented within a digital camera.

FIG. 19 shows automobiles equipped with a media player/recorder inaccordance with the present invention.

FIG. 20 shows an implementation where a media player/recordercommunicates with a biometric sensor over a cable.

FIG. 21 show a biometric sensor worn on a finger and transmittingbiometric data over a cable.

FIG. 22 shows a process for a media player/recorder to acquire sharedmedia.

FIG. 23 shows a process for a media player/recorder to share media.

FIG. 24 shows a process for a media player/recorder to match items ofinterest.

The leading digit(s) of each reference numeral used in thisspecification indicates the number of the drawing in which the referencenumeral first appears. Like reference numerals refer to like parts.

DETAILED DESCRIPTION

The present invention is directed to a media player/recorder apparatus,and in particular one that is portable. As used herein the term mediaplayer/recorder apparatus refers to an audio and/or video play back andrecording apparatus. In general, audio and/or video analog data is firstdigitized and compressed using one of a variety of formats and recordedin the media player/recorder for subsequent play back thereby. Duringplayback the digitized data is decompressed and converted to an analogsignal. Additionally while the preferred format for compressing audiodata is known as MP3, the present invention is independent of thecompression format and not limited to MP3. The compression formattherefore may include any other suitable compression format, such as, byway of example, EPAC™, QDesign Music playback, AAC, Liquid Audio, MSAudio, Dolby Digital, and the like.

While implementation of the present invention are discussed in terms ofdata compression such as MP3, the invention is not limited to datacompression, but includes other forms of data encoding that may or maynot include data compression. In implementations where the data encodingincludes data compression, the media data is encoded by a process thatcompresses the media data, and the encoded media data is decoded by aprocess that decompresses the encoded media data.

Referring to FIG. 2 there is shown the first embodiment of mediaplayer/recorder of the present invention. The media player/recorderincludes a wired interface 206, a wireless interface 210, memory 202, aprocessor 300, an output 216, a keypad 208, a display 212, a storagedevice (the storage device may utilize, for example, a magnetic media(such as a hard disk drive), magneto-optical media, an optical media(such as a CD ROM, CDR, CDRW or the like), and the like) such as, a diskdrive 230, a preamp 232 and a voice coil motor (VCM) 234. Wirelessinterface 210 includes a wireless transmitter 209 and a wirelessreceiver 211.

The operation of the media player/recorder is as follows. Operation ofthe media player/recorder is controlled by the user through keypad 208.Status of the media player/recorder is provided to the user by display212.

Media data, which was previously digitized, may be obtained (downloaded)from a personal computer, network appliance, local area network,Internet 50 and the like, including wireless networks withinfrastructure, such as a designated access point, peer-to-peer wirelessnetworks, and the like. Such external devices communicate with the mediaplayer/recorder via wired interface 206 and wireless interface 210,which are controlled by processor 300. Wired interface 206 may beimplemented, for example, as a parallel interface, serial interface,USB, Ethernet connection, IEEE 1394 (a.k.a. Firewire), and the like.Wireless interface 210 may be implemented, for example, as an infraredinterface, IEEE 802.15, IEEE 802.11, Bluetooth™ and the like. Again thepresent invention is independent of the interface selected. Media datais then stored on the storage device such as, disk drive 230 inaccordance with processor 300. Disk drive 230 is preferably a miniaturedrive with a capacity of 1 Gbyte of data storage, which is particularlysuitable for a portable device. Of course, any other appropriate sizeddisk drive may be employed.

Alternatively, media data may be obtained directly from an externalanalog source, such as a microphone or video camera, connected to input214. Input 214 takes the input signal from external device and sets theanalog signal to an appropriate level. The analog signal is thenconverted to a digital signal and compressed using a selected format byprocessor 300, as will be described herein below. The compressed digitaldata is similarly stored on disk drive 230.

When the user chooses a selection of media data to be played back withkeypad 208, processor 300 powers up disk drive 230 and retrieves theselected data which is then transferred to memory 202. It is noted thatthe powering up of the device is done in a sequential manner so as tominimize energy consumption of the device. A more detailed descriptionis provided below.

Memory 202 comprises a solid state memory, such as, for example dynamicrandom access memory (solid state memory), flash memory, EEPROM, or thelike. It is not necessary for memory 202 to be nonvolatile since themedia data is stored in a nonvolatile manner on storage device or diskdrive 230. The quantity of solid state memory required is less than isrequired in a conventional MP3 player. The quantity of solid statememory contemplate is about 2 Mbytes, which is sufficient to store about2 minutes of MP3 data. Of course, as will be appreciated by one ofordinary skill in the art, when dealing with video data, more solidstate memory may be required. The amount of solid state memory suppliedis selected to minimize energy consumption.

After the selected data is stored in memory 202, disk drive 230 is thenpowered down. In this manner, during playback disk drive 230 is poweredup only during the transfer of the selected media data from disk drive230 to memory 202, which results in lower energy consumption. A moredetailed description of the powering down of disk drive 230 is providedherein below. The media data is retrieved from memory 202. Processor 300determines the format of data compression from the retrieved data. Diskdrive 230, also stores the data compression/decompression algorithms.The data is decompressed in accordance with the determined format andconverted to an analog signal by processor 300. The analog signal is setto an appropriate level by output circuit 216. If the analog signalcontains audio data, output circuit 216 is connected to a speaker,headphone and the like for playback, and if the analog signal containsvideo data, output circuit 216 is connected to a display device forplayback.

Additionally, media data recorded on disk drive 230 or stored in memory202 may be transferred (uploaded) to a personal computer, networkappliance, local area network, internet 50 or another mediaplayer/recorder through interfaces 206 and 210 under the control ofprocessor 300.

FIG. 3 is a detailed block diagram of processor 300. Processor 300 ispreferably implemented as a single integrated circuit. A mediaplayback/recorder apparatus having a processor implemented as a singleintegrated circuit can be fabricated at lower cost and have lower energyconsumption. Alternatively, processor 300 may be implemented by discretecomponents. Processor 300 comprises a read channel 341, storagecontroller or hard disk controller 342, digital signalprocessor/microprocessor unit (DSP/MPU) 343, random access memory (RAM)344, a non volatile memory such as read only memory (ROM) 345, digitalto analog converter (DAC) 346 and analog to digital converter (ADC) 347.DSP/MPU 343 comprises servo controller 349 and Codec 348. In a preferredembodiment, DSP/MPU 343 is implemented as a single integrated circuit.In another embodiment, MPU may be implemented as one integrated circuitand the DSP may be implemented as another integrated circuit.

It is noted that DSP/MPU 343 may comprise a microprocessor unit, adigital signal processor, or any combination thereof. ROM 345 storesprogrammed instructions for processor 300 and DSP/MPU 343 to control theoperation of both the disk drive 230 (and associated circuitry) and thesignal processing of the media data. RAM 345 is provided as a workingmemory for DSP/MPU 343. For each of the various compression formatsdiscussed above, the decompression and compression algorithms for Codec348 are stored on disk drive 230. Storing the decompression andcompression algorithms on disk drive 230 minimizes the size of ROM 345and its energy consumption. Additionally, this feature allows futurecompression and decompressions formats to be easily implemented for themedia player/recorder.

In the implementation of FIG. 3, wireless interface 210 is implementedseparately from processor 300, and includes an antenna 356, a wirelessunit 354, a baseband processor 352, and a media access controller (MAC)350. Antenna 356 is a conventional antenna for receiving andtransmitting wireless signals. Wireless unit 354 converts wirelesssignals received by antenna 356 to analog baseband signals, and convertsanalog baseband signals received from baseband processor 352 to wirelesssignals for transmission by antenna 356. Baseband processor 352 convertsanalog baseband signals received from wireless unit 354 to a digitalbitstream, and converts a digital bitstream received from MAC 350 toanalog baseband signals, both according to well-known methods. MAC 350frames the digital bitstream produced by baseband processor 352, andfilters the frames to select the frames addressed to processor 300, bothaccording to well-known methods. MAC 350 also converts frames receivedfrom processor 300 to a digital bitstream for baseband processor 352,also according to well-known methods. In some implementations, MAC 35.0includes an embedded microprocessor.

Prior to discussing the operation of processor 300, reference is made toFIG. 6. FIG. 6 shows an exemplary data format of a magnetic media usedin disk drive 230, comprising a series of concentric data tracks 13wherein each data track 13 comprises a plurality of sectors 15 withembedded servo wedges 17. Servo controller 349 processes the servo datain servo wedges 17 and, in response thereto, positions the read/writehead over a desired track. Additionally, servo controller 349 processesservo bursts within servo wedges 17 to keep a disk head of disk drive230 aligned over a centerline of the desired track while writing andreading data. Servo wedges 17 may be detected by the discrete timesequence detector implemented in DSP/MPU 343. It is important to notethat DSP/MPU 343 is utilized only during the time period for detectingservo wedges 17; during other periods DSP/MPU 343 is available toperform other functions as described below, such as signal processingfor media data playback and recording. By using only one DSP rather thantwo, the cost of fabrication and the amount of energy consumption can bereduced.

As described above, the powering up of the device is done in asequential manner so as to minimize energy consumption of the device.More specifically, the mechanical or motor portions of the storagedevice are energized first. After the motor reaches operating speed, VCM234 is energized, followed by the energization of read channel 341 andHDC 342.

The operation of processor 300 is as follows. DSP/MPU 343 controls theentire operation of the media player/recorder. DSP/MPU 343 is coupled tohard disk controller 342. When writing data to disk drive 230, hard diskcontroller 342 receives a write instruction and write data from DSP/MPU343. The write data is temporarily stored in a cache memory (not shown)which is used as a buffer memory. Based on a clock from a clockgenerator (not shown), DSP/MPU 343 controls voice coil motor (VCM) andspindle motor 234 via servo unit 349. As a result, the magnetic head ismoved to a desired track position on the magnetic disk by the head arm,and the magnetic disk is rotated at a rated rotational speed by thespindle, which is driven by spindle motor 234. The data is read from thecache memory and supplied to read channel 341 via hard disk controller342. Read channel 341 encodes the write data under the control ofDSP/MPU 343, and supplies the encoded write data to preamplifier 232.The magnetic head writes the encoded write data on the magnetic disk inaccordance with a signal from preamplifier 232.

When reading data from the magnetic disk, hard disk controller 342receives a read instruction from DSP/MPU 343. Based on a clock signal,DSP/MPU 343 controls voice coil motor and spindle motor 234 via servounit 349. Hence, the magnetic head is moved to a desired track positionon the magnetic disk by the head arm, and the magnetic disk is rotatedby spindle motor 234.

The data read from the magnetic disk by the magnetic head is supplied toread channel 341 via preamplifier 232. Read channel 341 decodes the readdata under the control of DSP/MPU 343, and generates read data. The readdata are supplied from read channel 341 to hard disk controller 342under the control of DSP/MPU 343, and are temporarily stored in thecache memory. The read data read from the cache memory are supplied toDSP/MPU 343 from hard disk controller 342.

As noted above, operation of the media player/recorder is controlled bythe user through keypad 208, which is in communication with DSP/MPU 343.Status of the media player/recorder is provided to the user by display212 in accordance with DSP/MPU 343. When either uploading or downloadingdata, the media player/recorder is in communication with personalcomputer, network appliance, local area network, Internet 50. Otherwisethe media player/recorder can be operated independently. The userselects the file to be downloaded from personal computer, networkappliance, local area network, Internet 50 by way of keypad 208.Alternatively the user can select the file to be downloaded from thepersonal computer. DSP/MPU 343 controls the flow of data throughinterfaces 206 and/or 210 and stores the data onto hard disk 230 inaccordance with the method described above. When uploading data topersonal computer, network appliance, local area network, Internet 50the process is reversed.

To record data directly input into media player/recorder from anexternal analog source, the external device is placed in communicationwith input 214. Input 214 takes the input signal from the externaldevice and sets the analog signal to an appropriate level. The analogsignal is then converted to a digital signal by ADC 347 of processor300. Codec 348 of DSP/MPU 343 compresses the digitized data using adefault compression format or one selected by the user by way of keypad208. The default or selected compression program is transferred fromhard disk 230 to RAM 344 and provided to Codec 348 for encoding. Thecompressed digital data is similarly stored on disk drive 230 under thecontrol of DSP/MPU 343.

When the user chooses a selection of media data to be played back withkeypad 208, DSP/MPU 343 powers up disk drive 230 and retrieves theselected data as described above. The retrieved data is then written tomemory 202. After the selected data is stored in memory 202, disk drive230 is then powered down by DSP/MPU 343. In this manner, during playbackdisk drive 230 is powered up only during the transfer of the selectedmedia data from disk drive 230 to memory 202, which results in lowerenergy consumption. A single song stored in MP3 format may takeapproximately one second to retrieve from disk drive 230. The media datais retrieved from memory 202 by DSP/MPW 343 and the compression formatis then determined.

If the decompression program has already been transferred to RAM 344,the program is provided to Codec 348. Otherwise the decompressionalgorithm is retrieved from hard disk 230 and transferred to RAM 344.The data is then decompressed by Codec 348 and converted to an analogsignal by DAC 346. The analog signal is set to an appropriate level byoutput circuit 216. If the analog signal contains audio data, outputcircuit 216 is connected to a speaker, headphone and the like forplayback, and if the analog signal contains video data, output circuit216 is connected to a display device for playback.

It is noted that the capacity of disk drive 230 is selected to hold adesired amount of media data, and the amount of solid state memory 202is selected to minimize energy consumption. A disk drive having acapacity of 1 Gbyte can store approximately 30 hours of MP3 compressedmusic:

This section will described the power management control of the deviceby CPU/MPU 343.

Referring now to FIGS. 3, 7 and 9, when the user turns on the mediaplayer and selects a file to be played (step 912), the variouscomponents of media player are powered up in a sequential manner so asto minimize energy consumption of the device. More specifically, themechanical or motor portions of the storage device or disk drive 230 areenergized first (step 914). After the motor reaches its operating speed(step 916), VCM 234, preamp 232, read channel 341 and HDC 342 areenergized, since these components are only functional after disk drive230 becomes operational. Energy would be unnecessarily expended ifpreamp 232, read channel 341 and HDC 342 were energized before diskdrive 230 becomes operational. Therefore, VCM 234, preamp 232, readchannel 341 and HDC 342 are energized only after disk drive 230 becomesoperational (step 918). Preamp 232, read channel 341 and HDC 342 can bereferred to as a storage circuit and include circuits to transform datastored on a storage device to a digital signal.

FIG. 7 is a schematic representation of memory 202. User data is firststored from location 724 to location 702 in a sequential manner inmemory 202. In one embodiment, DSP/MPU 343 uses a pointer system inconnection with memory 202 to determine when the amount of data storedthe amount data stored reaches an upper threshold value (step 922). Whenthe amount of data stored in memory 202 reaches the upper thresholdvalue, HDC 342, read channel 341, preamp 232, disk drive 230 and VCM 234are powered down or deenergized (step 924). Of course, as will beappreciated by one of ordinary skill in the art, while data is being tomemory 202, data may also be read contemporaneously therefrom by DSP/MPU343 for decompression and playback. Data is then read out from memory202 starting at location 702 towards location 724 by DSP/MPU 343 (step926). When the data file has been completely read from memory (step928), the user can select another file. The data is continually readfrom memory 202, until the amount of data remaining is below a lowthreshold value (step 930). When the data remaining in memory 202 isbelow the threshold value, disk drive 230, VCM 234, preamp 232, readchannel 341 and HDC 342 are sequentially energized as noted above, anddata is transferred from the storage device to memory 202.

FIG. 10 is an alternate embodiment to FIG. 9. Instead of utilizing apointer system, the amount of data transferred to memory 202 is counted(step 1020) by a counter incorporated in DSP/MPU 343. The sequentialenergization of the disk drive 230, VCM 234, preamp 232, read channel341 and HDC 342 is similar to that of the embodiment of FIG. 9 (steps1012, 1014, 1016 and 1018). When amount of data transfer to memory 202is greater than or equal to an upper limit U (step 1022), HDC 342, readchannel 341, preamp 232, disk drive 230 and VCM 234 are powered down ordeenergized (step 1024). As data is read from memory, the counterdecrements the count, and when the count is less than or equal to alower limit 1 (step 1030), disk drive 230, VCM 234, preamp 232, readchannel 341 and HDC 342 are sequentially energized as noted above, anddata is transferred from the storage device to memory 202.

FIG. 11 is another alternate embodiment to FIG. 9. The embodiment inFIG. 9 utilizes a timer incorporated in DSP/MPU 343 to approximate theamount of data transferred to memory 202 in accordance with the datatransfer rate of disk drive 230. The sequential energization of diskdrive 230, VCM 234, preamp 232, read channel 341 and HDC 342 is similarto that of the embodiment of FIG. 9 (steps 1112, 1114, 1116 and 1118).The timer is started (step 1119) as data is transferred form disk drive230 to memory 202. When the timer times out, HDC 342, read channel 341,preamp 232, disk drive 230 and VCM 234 are powered down or deenergized(step 1124). As data is read from memory, the timer is started (1125),and when the timer times out (step 1130), disk drive 230, VCM 234,preamp 232, read channel 341 and HDC 342 are sequentially energized asnoted above, and data is transferred from the storage device to memory202.

In the simplest implementation, media data representing one selection(such as a single song) is transferred from disk drive 230 to memory 202for playback. FIG. 8 is a schematic representation of memory 202, andFIG. 12 is a flow chart illustrating an alternate implementation. Asshown therein, instead of retrieving just one selection, first portionsof multiple selections are transferred from disk drive 230 to memory202. These multiple selections may include the user's favoriteselections, random selections from an external source, or the like (step1204). When the user starts playing back the selection, a timer isstarted (step 1208) and the first selection is played back (step 1210).If a user instruction is received (step 1212) to continue playing thatselection is received within a predetermined time (step 1214), theremaining portion of the selection is transferred from disk drive 230 tomemory 202 (step 1216) for continued play back (step 1218). If the timertimes out (step 1214), the first portion of the next selection (step1206) is played back and the process is repeated for each remainingfirst portion. Alternatively, instead of using a timer, a memorythreshold, as shown in FIG. 8, may be utilized permit playback of theentire current selection if the user instruction is received before thememory being read out goes below the current selection threshold.Otherwise the first portion of the next selection is played back. Ofcourse, the play back of portions of selections 1 through N may be inany order, such as sequential, random and predetermined. If the playback is in sequential order new selections may be transferred from diskdrive 230 to memory 202 to replace previously played back selections.

FIGS. 4 and 5 show a second embodiment of the present invention. Thesecond embodiment is similar to the first embodiment except the secondembodiment does not include memory 202. In this embodiment media data isrecorded in a similar manner as the first embodiment and no furtherdiscussion is provided herein. For playback operation, the media data isretrieved directly from disk drive 230 for playback through output 216.The other portions of the playback operation are similar to the firstembodiment. In the second embodiment disk drive 230 will be powered onany time media data is recorded or played back. As such this embodimentis particularly applicable when the power supply is external. Forexample the media player/recorder of the second embodiment may be aportable device used in an automobile supply by energy therefrom. Insome implementations, MAC 350 includes an embedded microprocessor.

FIG. 13 shows a variation of the first embodiment. According to thisvariation, baseband processor 352 and MAC 350 are implemented withinprocessor 300, preferably as a single integrated circuit. Wirelessinterface 210 includes antenna 356 and wireless unit 354. This variationoperates as described for the first embodiment. In some implementations,MAC 350 includes an embedded microprocessor.

FIG. 14 shows a variation of the second embodiment. According to thisvariation, baseband processor 352 and MAC 350 are implemented withinprocessor 300, preferably as a single integrated circuit. Wirelessinterface 210 includes antenna 356 and wireless unit 354. This variationoperates as described for the first embodiment. In some implementations,MAC 350 includes an embedded microprocessor.

FIG. 15 is a block diagram of a third embodiment of a mediaplayer/recorder in accordance with the present invention. According tothis embodiment, a MAC 1550 is implemented within processor 300, whichis preferably implemented as a single integrated circuit, and includesan embedded digital signal processor and microprocessor unit (DSP/MPU)1551. DSP/MPU 1551 includes codec 348, and communicates with memory 202,display 212, keypad 208, wired interface 206, RAM 344, DAC 346, and ADC347, which function as described above with reference to FIG. 3. DSP/MPU343 has been replaces with DSP/MPU 1543, which controls disk drive 230,read channel 341, and HDC 342 as described above.

FIG. 16 is a block diagram of a fourth embodiment of a mediaplayer/recorder in accordance with the present invention. Thisembodiment is similar to the above embodiments, but has no hard drive.Some implementations of this embodiment optionally include anon-volatile memory 1602 such as a flash memory instead of a hard drive.Consequently the circuits associated with the hard drive are alsoeliminated, resulting in a less-expensive media player/recorder. In thedepicted implementation, baseband processor 352 and MAC 350 areimplemented within processor 300, which is preferably implemented as asingle integrated circuit. In other implementations, baseband processor352 and MAC 350 are implemented separately from processor 300, forexample, within wireless interface 210. In some implementations, MAC 350includes an embedded DSP/MPU. These implementations operate in a mannersimilar to that described for the implementations of FIG. 15.

The implementations using non-volatile memory instead of a hard driveare especially useful for receiving streaming media from broadcasts suchas internet radio stations and other media player recorders. Someimplementations feature a “broadcast” mode where the mediaplayer/recorder plays a media selection and wirelessly transmits themedia selection, either compressed or uncompressed, or in analog form,such that other media player/recorders can receive the broadcast mediaand play it at the same time as the broadcasting player/recorder.

The implementations with no hard drive or non-volatile memory areespecially useful in a “local radio” mode where the media to be playedis stored on a personal computer, server, or the like that is separatefrom the media player/recorder. FIG. 17 illustrates the local radiomode. In this mode, the media is wirelessly streamed to the mediaplayer/recorder 1704, which decompresses and plays the media withoutstoring the media. Because the media player/recorder never stores a copyof the media, it is ideal for playing media for which only a single copyis licensed. The single copy is stored on a personal computer (PC) 1702,and is streamed to media player/recorder 1704 for playback. Because onlya single copy of the media is stored, the single-copy license issatisfied.

FIG. 18 shows an implementation where a media player/recorder 1804 isimplemented within a digital camera 1802. In recording mode, an imagesensor 1806 within camera 1802 captures one or more images, and passes asignal representing the image to media player/recorder 1804. If thesignal is analog, a analog-to-digital converter within mediaplayer/recorder 1804 converts the analog signal to a digital signal. Adigital signal processor within media player/recorder 1804 then encodesthe digital signal. The encoding can include image compression, imagemanipulation, and the like. A storage controller within mediaplayer/recorder 1804 stores the encoded image data on a storage device.In some implementations, digital camera 1802 is a digital motion picturecamera and the encoded image data represents a motion picture.

In playback mode, the storage controller retrieves the encoded imagedata from the storage device. The digital signal processor decodes theretrieved encoded image data. Media player/recorder 1804 sends a signalrepresenting the decoded image data to a display 1808, which displaysthe image(s) captured by image sensor 1806.

The media player/recorder described herein can be implemented as aportable unit, as a permanently mounted unit within a vehicle such as anautomobile, and the like. FIG. 19 shows automobiles 1902A and 1902Bequipped with such a media player/recorder. In this implementation, theantenna of the automobile can serve as the antenna of the mediaplayer/recorder. The media player/recorders in the automobiles 1902 cancommunicate with each other, without user intervention, while travelingnear each other, while stopped at intersections, and in other similarscenarios, to share media data, items of interest, and the like. Themedia player/recorders in the automobiles 1902 can also communicate withportable media player/recorders 1904 in a similar fashion. The vehicularand portable media player/recorders can communicate with a stationarybase station 1906 to share media over a network such as the Internet.For example, a homeowner can equip his garage with such a base station1906 so the media player/recorder in his automobile can share media anditems of interest while parked in the garage during the night.Similarly, a user of a portable player/recorder 1904 can equip his homewith a base station 1906 so the media player/recorder 1904 can sharemedia and items of interest while not otherwise in use, for examplewhile the user sleeps.

Some implementations receive and store data other than media data. Insome implementations the media player/recorder records biometric datacollected by a biometric sensor disposed near, upon, or within a humanbody or other organism. The biometric data can represent biologicalfunctions such as breathing, heart function, body temperature, bloodpressure, and the like. Such devices and methods are well-know in therelevant arts, and are described in U.S. Pat. No. 6,023,662 entitled“Measurement Device, Portable Electronic Instrument, And MeasurementMethod,” issued Feb. 8, 2000; U.S. Pat. No. 6,030,342 entitled “DeviceFor Measuring Calorie Expenditure And Device For Measuring BodyTemperature,” issued Feb. 29, 2000; U.S. Pat. No. 6,036,653 entitled“Pulsimeter,” issued Mar. 14, 2000; and U.S. Pat. No. 6,081,742 entitled“Organism State Measuring Device and Relaxation Instructing Device,”issued Jun. 27, 2000, the disclosures thereof incorporated by referenceherein in their entirety.

FIG. 18 shows an implementation where a media player/recorder 1802communicates with a biometric sensor 1804 over a cable 1806. Thebiometric data collected by biometric sensor 1804 is passed to mediaplayer/recorder 1802 over cable 1806. Alternatively, the biometric datacan be passed to media/player recorder 1802 wirelessly. The data can bepassed in analog or digital form, and is received and stored bymedia/player recorder 1802 according to the methods described above. InFIG. 18 the biometric sensor is worn on the leg. Of course, thebiometric sensor can be worn in other locations. FIG. 21 show abiometric sensor 2104 worn on a finger and transmitting biometric dataover a cable 2106.

According to these implementations, a user of the media player/recordercan record biometric data for later use in diagnosis and treatment ofintermittently occurring medical conditions such as heart arrhythmia.When the user subsequently visits a doctor, the media player/recordercan transmit the stored biometric data to the doctor's computer foranalysis, by wire or wirelessly.

Some implementations feature a “share” mode in which media stored on onemedia player/recorder can be shared with other media player recordersusing wireless data transmissions over wireless interface 210. FIGS. 22and 23 show methods for such sharing. Of course, media can be sharedover wired interface 206 as well using similar methods. However, thesemethods are well-suited for the relatively lower data rates of wirelesslinks because they require little user intervention. These methods canbe used not only to share media between player/recorder units, but alsowith other repositories of media, such as remote network servers and thelike.

FIG. 22 shows a process 2200 for a media player/recorder to acquireshared media. A list of identifiers of desired media selections, such assong titles, is stored within the player/recorder (step 2202). A usercan generate the list using the keypad, download the list from acomputer, or the like. Optionally, the wireless transmitter can transmita signal representing the list (step 2204). Other player/recorder unitsreceive the list, and respond by offering media selections on the list.The wireless receiver receives the titles of the offered mediaselections (step 2206). The offered titles are compared to the desiredtitles (step 2208). The player/recorder optionally transmits a signalrequesting the selections having matching titles (step 2210). Otherplayer/recorders respond by transmitting the requested selections. Theplayer/recorder receives the requested selections, and stores thereceived selections (step 2212).

The player/recorder can obtain selections shared by a broadcaster thatsimply transmits a title of a media selection, and then transmits theselection, without first waiting to receive lists of desired titles orrequests for media selections having matching titles. In this caseoptional steps 2204 and 2210 are not needed.

FIG. 23 shows a process 2300 for a media player/recorder to share media.A list of identifiers of shared media selections, such as song titles,is stored within the player/recorder (step 2302). A user can generatethe list using the keypad, download the list from a computer, or thelike. Optionally, the wireless transmitter can transmit a signalrepresenting the list (step 2304). Other player/recorder units receivethe list, and respond by requesting media selections on the list. Thewireless receiver receives the titles of the sought media selections(step 2306). The sought titles are compared to the shared titles (step2308). The player/recorder transmits the selections having matchingtitles (step 2310).

Some implementations feature an “interest matching” mode in which itemsof interest stored on one media player/recorder can be shared with othermedia player recorders using wireless data transmissions over wirelessinterface 220. Items of interest include interests such as hobbies andsports, items for sale or rent, requests for items for sale or rent,musical preferences and the like. When a match is made, the displayunits indicate the match, and the media player/recorders can wirelesslyexchange contact information such as email addresses, telephone numbersand the like. Some implementations include a directional antenna toallow the users having matched items of interest to locate each other.Of course, interests can be matched over wired interface 216 as wellusing similar methods. FIG. 24 shows methods for such interest matching.

FIG. 24 shows a process 2400 for a media player/recorder to match itemsof interest. A list of desired items of interest is stored within theplayer/recorder (step 2402). A user can generate the list using thekeypad, download the list from a computer, or the like. Optionally, thewireless transmitter can transmit a signal representing the list (step2404). The wireless receiver receives offered items of interest fromother player/recorders (step 2406). The offered items of interest arecompared to the desired items of interest (step 2408). When compareditems of interest match, the display unit indicates a match (step 2410).Optionally the player/recorder transmits contact information to thetransmitter of the offered item of interest (step 2412). Optionally, theplayer/recorder determines and displays a direction to the transmitterof the offered item of interest (step 2414). The player/recorder canalso include a range finder circuit to determine a range to thetransmitter of the offered item of interest, which is then displayed.

The invention can be implemented in digital electronic circuitry, or incomputer hardware, firmware, software, or in combinations of them.Apparatus of the invention can be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a programmable processor; and method steps of the inventioncan be performed by a programmable processor executing a program ofinstructions to perform functions of the invention by operating on inputdata and generating output. The invention can be implementedadvantageously in one or more computer programs that are executable on aprogrammable system including at least one programmable processorcoupled to receive data and instructions from, and to transmit data andinstructions to, a data storage system, at least one input device, andat least one output device. Each computer program can be implemented ina high-level procedural or object-oriented programming language, or inassembly or machine language if desired; and in any case, the languagecan be a compiled or interpreted language. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, a processor will receive instructions and data from aread-only memory and/or a random access memory. Generally, a computerwill include one or more mass storage devices for storing data files;such devices include magnetic disks, such as internal hard disks andremovable disks; magneto-optical disks; and optical disks. Storagedevices suitable for tangibly embodying computer program instructionsand data include all forms of non-volatile memory, including by way ofexample semiconductor memory devices, such as EPROM, EEPROM, and flashmemory devices; magnetic disks such as internal hard disks and removabledisks; magneto-optical disks; and CD-ROM disks. Any of the foregoing canbe supplemented by, or incorporated in, ASICs (application-specificintegrated circuits).

A number of implementations of the invention have been described.Neverthe-less, it will be understood that various modifications may bemade without departing from the spirit and scope of the invention.Accordingly, other implementations are within the scope of the followingclaims.

1. (canceled)
 2. A media player/recorder comprising: a wireless receiverthat receives encoded media data and an identifier of an offered encodedmedia selection; a storage device that stores the encoded media data anda list of identifiers of desired encoded media selections; and aprocessor that compares the identifier of the offered encoded mediaselection to the list.
 3. The media player/recorder of claim 2 whereinthe processor stores encoded media data corresponding to the offeredencoded media selection when the identifier matches at least oneidentifier in the list.
 4. The media player/recorder of claim 2 whereinthe processor retrieves and decodes the encoded media data from thestorage device.
 5. The media player/recorder of claim 4 furthercomprising an output circuit that outputs the decoded media data fromthe processor.
 6. The media player/recorder of claim 4 wherein theencoded media data is compressed and the decoded media data isdecompressed.
 7. The media player/recorder of claim 4 wherein theprocessor comprises a single integrated circuit.
 8. The mediaplayer/recorder of claim 2 further comprising a read channel thatcommunicates with the processor and that writes data to and reads datafrom the storage device.
 9. The media player/recorder of claim 4 furthercomprising memory to store the encoded media data retrieved by theprocessor.
 10. The media player/recorder of claim 4 further comprisingan input circuit to receive unencoded media data, wherein the processorencodes the unencoded media data and stores the encoded media data onthe storage device.
 11. The media player/recorder of claim 2 wherein thestorage device comprises non-volatile semiconductor memory.
 12. Themedia player/recorder of claim 2 wherein the storage device comprises ahard disk drive.
 13. A media player/recorder comprising: a wirelesstransceiver to receive encoded media data and a request including anidentifier of a sought encoded media selection; a storage device tostore the encoded media data and a list of identifiers of shared encodedmedia selections stored on the storage device; and a processor thatcompares the identifier of the sought encoded media selection with thelist.
 14. The media player/recorder of claim 13 wherein the processorcauses the wireless transceiver to transmit encoded media datacorresponding to a matched one of the shared encoded media selectionswhen the identifier of the matched one matches the identifier of thesought encoded media selection.
 15. The media player/recorder of claim13 wherein the processor retrieves the encoded media data from thestorage device and decodes the encoded media data.
 16. The mediaplayer/recorder of claim 13 further comprising an output circuit tooutput the decoded media data from the processor.
 17. The mediaplayer/recorder of claim 14 wherein the wireless transceiver transmitsat least one of the identifiers of the shared encoded media selectionsbefore said request is received.
 18. The media player/recorder of claim15 wherein the processor comprises a single integrated circuit.
 19. Themedia player/recorder of claim 13 wherein the storage device comprisesnon-volatile semiconductor memory.
 20. The media player/recorder ofclaim 13 wherein the storage device comprises a hard disk drive.
 21. Amedia player/recorder comprising: a wireless receiver to receive encodedmedia data and an offered item of interest; a storage device to storethe encoded media data and a list of desired items of interest; aprocessor that compares the offered item of interest to the list ofdesired items of interest and that selectively indicates a match whenthe offered item of interest corresponds to one of the desired items ofinterest; and a display unit that communicates with the processor andthat indicates the match.
 22. The media player/recorder of claim 21wherein the processor retrieves the encoded media data from the storagedevice and decodes the encoded media data retrieved by the storagecontroller.
 23. The media player/recorder of claim 21 further comprisingan output circuit to output the decoded media data from the processor.24. The media player/recorder of claim 21 further comprising adirectional antenna to determine a direction to a transmitter of theoffered item of interest, wherein the display unit displays thedirection.
 25. The media player/recorder of claim 21 further comprisinga wireless transmitter to transmit contact information to a remotetransceiver associated with the offered item of interest.
 26. The mediaplayer/recorder of claim 21 further comprising a wireless transmitter totransmit data representing a matched one of the desired items ofinterest.
 27. The media player/recorder of claim 21 wherein the storagedevice comprises non-volatile semiconductor memory.
 28. The mediaplayer/recorder of claim 21 wherein the storage device comprises a harddisk drive.